#!/usr/bin/python
"""
    addnode.py   -- A tool to provision information starting with OpenNMS 1.8 as part of the RESTful API
    Copyright (C) <2009>  Kirk Reeves - kirk.reeves at gmail.com

    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 2 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.
"""

import sys
sys.path.append('../')

from onmslib import *

dict = {'id' : 'foreignid1', 'label' : 'host1', 'group' : 'TWiO'}
dict.update(BASEARGS)

def add_node():

	node = Node(**dict)
	node.add_key('building', 'Somewhere, USA')
	node.commit('add')

	return node

def add_interface(node):

	iface = Interface(node=node, ip='192.168.1.1')
	iface.add_key('descr' , 'eth0')
	iface.add_key('snmp-primary' , 'P')
	iface.commit('add')

	return iface

def add_service(iface):
	service = Service(service='ICMP', interface=iface)
	service.commit('add')

def add_asset(node,name,value):

	asset = Asset(node=node)
	asset.add_option('name',name)
	asset.add_option('value',value)
	asset.commit('add')

def add_category(node, cat):
	category = Category(node=node)
	category.add_option('category', cat)
	category.commit('add')

if __name__=="__main__":

	node = add_node()
	iface = add_interface(node)
	add_service(iface)
	add_asset(node, "address1", "123 Example Way")
	add_asset(node, "address2", "Suite 1234")
	add_category(node,'Routers')
	add_category(node,'Production')
	

